#include "stm32f10x.h"                  // Device header

void Buzzer_Init(uint32_t RCC_APB2Periph,GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
{
	RCC_APB2PeriphClockCmd(RCC_APB2Periph, ENABLE);
	
	GPIO_InitTypeDef GPIO_InitStruct;
	GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
	GPIO_InitStruct.GPIO_Pin = GPIO_Pin;
	GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_Init(GPIOx, &GPIO_InitStruct);
	
	GPIO_SetBits(GPIOx, GPIO_Pin);
}

void Buzzer_Set(FLAGS index, GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
{
	switch(index)
	{
		case ON_ALARM:
			GPIO_ResetBits(GPIOx, GPIO_Pin);
			break;
		case OFF_ALARM:
			GPIO_SetBits(GPIOx, GPIO_Pin);
			break;
		default:
			GPIO_SetBits(GPIOx, GPIO_Pin);
	}
}
